package com.eastart.template.base;

import com.alibaba.excel.annotation.ExcelProperty;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.util.Date;

@Data
public class BaseEntity implements Serializable {

    //是否删除,默认0，0，未删除，1，删除
    @ApiModelProperty(value = "是否删除,默认0，0，未删除，1，删除")
    @TableField(value = "is_delete")
    @ExcelProperty(value = "是否删除,默认0，0，未删除，1，删除" ,index = 1)
    private Integer isDelete;
    //创建用户
    @ApiModelProperty(value = "创建用户")
    @TableField(value = "update_user")
    @ExcelProperty(value = "创建用户")
    private String createUser;
    //创建时间
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "创建时间")
    @TableField(value = "create_time", fill = FieldFill.INSERT) // 新增和更新执行
    @ExcelProperty(value = "创建时间")
    private Date createTime;
    //创建ip
    @ApiModelProperty(value = "创建IP")
    @TableField(value = "create_ip")
    @ExcelProperty(value = "创建IP")
    private String createIp;
    //修改用户
    @ApiModelProperty(value = "修改用户")
    @TableField(value = "update_user")
    @ExcelProperty(value = "修改用户")
    private String updateUser;
    //修改时间
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "修改时间")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE) // 新增和更新执行
    @ExcelProperty(value = "修改时间")
    private Date updateTime;
    //修改ip
    @ApiModelProperty(value = "修改IP")
    @TableField(value = "update_ip")
    @ExcelProperty(value = "修改IP")
    private String updateIp;

}
